package vcp.entity;

import java.io.Serializable;

import vcp.enums.Screen;
import vcp.enums.UserType;
/**
 * User class includes getter and setters for relevant details
 * @author VCP team
 *
 */
public class User implements Serializable
{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1171786754767799125L;

	protected int userID;
	/**
	 * getter
	 * @return user Id
	 */
	public int getUserID ()
	{
		return this.userID;
	}
	/**
	 * setter
	 * @param userID
	 */
	public void setUserID ( int userID )
	{
		this.userID = userID;
	}

	private String password;
	/**
	 * getter
	 * @return password
	 */
	public String getPassword ()
	{
		return this.password;
	}
	/**
	 * setter
	 * @param password
	 */
	public void setPassword ( String password )
	{
		this.password = password;
	}

	private UserType userType;
	/**
	 * getter
	 * @return user type
	 */
	public UserType getUserType ()
	{
		return this.userType;
	}
	/**
	 * setter
	 * @param userType
	 */
	public void setUserType ( UserType userType )
	{
		this.userType = userType;
	}

	private String userFirstName;
	/**
	 * getter
	 * @return first name
	 */
	public String getUserFirstName ()
	{
		return this.userFirstName;
	}
	/**
	 * setter
	 * @param userFirstName
	 */
	public void setUserFirstName ( String userFirstName )
	{
		this.userFirstName = userFirstName;
	}

	private String userLastName;
	/**
	 * getter
	 * @return last name
	 */
	public String getUserLastName ()
	{
		return this.userLastName;
	}
	/**
	 * setter
	 * @param userLastName
	 */
	public void setUserLastName ( String userLastName )
	{
		this.userLastName = userLastName;
	}

	private String userEmail;
	/**
	 * getter
	 * @return user email
	 */
	public String getUserEmail ()
	{
		return this.userEmail;
	}
	/**
	 * setter
	 * @param userEmail
	 */
	public void setUserEmail ( String userEmail )
	{
		this.userEmail = userEmail;
	}

	private boolean isLoggedIn;

	/**
	 * getter
	 * @return true if logged in
	 */
	public boolean isLoggedIn() {
		return this.isLoggedIn;
	}
	/**
	 * setter
	 * @param isLoggedIn
	 */
	public void setLoggedIn(boolean isLoggedIn) {
		this.isLoggedIn = isLoggedIn;
	}
	/**
	 *  not implemented
	 */
	public String[] getVisibleTabs ()
	{
		return null;
	}
	/**
	 *  not implemented
	 */
	public Screen getInitScreenType ()
	{
		return null;
	}
	/**
	 *  not implemented
	 */
	public Screen getInitTabScreen ()
	{
		return null;
	}
}
